GroupJoin(TOuter, TInner, TKey, TResult) Method (ParallelQuery(TOuter), ParallelQuery(TInner), Func(TOuter, TKey), Func(TInner, TKey), Func(TOuter, IEnumerable(TInner), TResult), IEqualityComparer(TKey))

Task Parallel System.Threading

Correlates in parallel the elements of two sequences based on key equality and groups the results. A specified IEqualityComparer{T} is used to compare keys.

Namespace:  System.Linq
Assembly:  System.Threading (in System.Threading.dll)

Syntax

Visual Basic (Declaration)
Public Shared Function GroupJoin(Of TOuter, TInner, TKey, TResult) ( _
	outer As ParallelQuery(Of TOuter), _
	inner As ParallelQuery(Of TInner), _
	outerKeySelector As Func(Of TOuter, TKey), _
	innerKeySelector As Func(Of TInner, TKey), _
	resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), _
	comparer As IEqualityComparer(Of TKey) _
) As ParallelQuery(Of TResult)
C#
public static ParallelQuery<TResult> GroupJoin<TOuter, TInner, TKey, TResult>(
	ParallelQuery<TOuter> outer,
	ParallelQuery<TInner> inner,
	Func<TOuter, TKey> outerKeySelector,
	Func<TInner, TKey> innerKeySelector,
	Func<TOuter, IEnumerable<TInner>, TResult> resultSelector,
	IEqualityComparer<TKey> comparer
)

Parameters

outer
Type: System.Linq..::.ParallelQuery<(Of <(TOuter>)>)
The first sequence to join.
inner
Type: System.Linq..::.ParallelQuery<(Of <(TInner>)>)
The sequence to join to the first sequence.
outerKeySelector
Type: System..::.Func<(Of <(TOuter, TKey>)>)
A function to extract the join key from each element of the first sequence.
innerKeySelector
Type: System..::.Func<(Of <(TInner, TKey>)>)
A function to extract the join key from each element of the second sequence.
resultSelector
Type: System..::.Func<(Of <(TOuter, IEnumerable<(Of <(TInner>)>), TResult>)>)
A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence.
comparer
Type: System.Collections.Generic..::.IEqualityComparer<(Of <(TKey>)>)
An IEqualityComparer<(Of <(T>)>) to hash and compare keys.

Type Parameters

TOuter
The type of the elements of the first sequence.
TInner
The type of the elements of the second sequence.
TKey
The type of the keys returned by the key selector functions.
TResult
The type of the result elements.

Return Value

A sequence that has elements of type TResult that are obtained by performing a grouped join on two sequences.

Exceptions

ExceptionCondition
System..::.ArgumentNullException outer or inner or outerKeySelector or innerKeySelector or resultSelector is a null reference (Nothing in Visual Basic).

See Also